/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package org.cip.esymons.colegiatura.beans;

import java.util.List;
import javax.faces.model.SelectItem;
import org.cip.esymons.colegiatura.bc.GradoDelegado;
import org.cip.esymons.colegiatura.be.GradoProfesional;
import org.cip.esymons.general.be.Facultad;

/**
 *
 * @author WILLIAM GASTAÑUEDI CABALLERO
 */
public class GradoController {

//DECLARACION DE CLASES.
    private GradoDelegado delegado;
    private GradoProfesional grado;
//CONSTRUCTOR.
    public GradoController() {

        delegado = new GradoDelegado();
        grado = new GradoProfesional();
    }
//GETTERS AND SETTERS
    public GradoDelegado getDelegado() {
        return delegado;
    }

    public void setDelegado(GradoDelegado delegado) {
        this.delegado = delegado;
    }

    public GradoProfesional getGrado() {
        return grado;
    }

    public void setGrado(GradoProfesional grado) {
        this.grado = grado;
    }
//METODO QUE BUSCA UN GRADO PROFESIONAL POR CODIGO
    public GradoProfesional buscarPorCodigo(Integer codigo){

        return delegado.find(codigo);
    }
//METODO QUE LISTA TODOS LOS GRADOS PROFESIONALES.
    public List<GradoProfesional> listaGrado(){

        return delegado.findAll();
    }
//METODO QUE LISTA TODOS LOS GRADOS PROFESIONALES Y LOS PERMITE VISUALIZAR EN
//UN COMBOBOX
    public SelectItem[] getSelectListaGrado(){

      try{
        System.out.println("Ingreso 1");
        SelectItem[] selects = null;
        List<GradoProfesional> listaGrado = delegado.findAll();
        selects = new SelectItem[listaGrado.size()];
        int cont = 0;
        for(GradoProfesional grad : listaGrado){

            SelectItem item = new SelectItem(grad, grad.getGprNombre());
            selects[cont] = item;
            cont++;
        }
        return selects;
      }catch(Exception e){
            System.out.println("Ingreso Error");
            SelectItem[] selects = new SelectItem[1];
            SelectItem item = new SelectItem(null, "No existen grados");
            selects[0] = item;
            return selects;
      }

    }

}
